Bug fix: Rectify logic to enter or exit from DVM domain
authorVikram Kanigiri <[email protected]>
Mon, 4 Jan 2016 16:23:22 +0000 (16:23 +0000)
committerVikram Kanigiri <[email protected]>
Mon, 8 Feb 2016 10:42:56 +0000 (10:42 +0000)
commit3105f7ba9a3a9f6f0e78761e8bdd4da621254730
tree84fcf148078516e5566e2d876d1fffc3bf60720d
parentdbc807179fea7438efa3374584310727ce44bbc9
Bug fix: Rectify logic to enter or exit from DVM domain

Currently, `ccn_snoop_dvm_domain_common()` is responsible for providing
a bitmap of HN-F and HN-I nodes in the interconnect. There is a request
node (RN) corresponding to the master interface (e.g. cluster) that needs
to be added or removed from the snoop/DVM domain. This request node is
removed from or added to each HN-F or HN-I node present in the bitmap
depending upon the type of domain.

The above logic is incorrect when participation of a master interface in
the DVM domain has to be managed. The request node should be removed
from or added to the single Miscellaneous Node (MN) in the system
instead of each HN-I node.

This patch fixes this by removing the intermediate
`ccn_snoop_dvm_domain_common()` and instead reads the MN registers to
get the needed node Id bitmap for snoop(HN-F bitmap) and DVM(MN bitmap)
domains.

Additionally, it renames `MN_DDC_SET_OFF` to `MN_DDC_SET_OFFSET` to
be inline with other macros.

Change-Id: Id896046dd0ccc5092419e74f8ac85e31b104f7a4
drivers/arm/ccn/ccn.c
drivers/arm/ccn/ccn_private.h